<template>
  <div>
     ts的vue3类型，特殊类型
     <button @click="say($event)">点击</button>
     <ul>
        <li>11</li>
        <li>22</li>
        <li>33</li>
     </ul>
     <end-one myname="丽丽" myage="18" mysex="男" @sendMoney="getData"> 
          <template #myfooter>
              <h1>你好</h1>
              <h2>哈哈哈</h2>
          </template>
           <template #mymenu>
              <h1>111</h1>
              <h2>222</h2>
          </template>
    </end-one>
  </div>
</template>

<script setup lang="ts">
// ts的文件 引入后 都能自适配类型 因为插件库都提供了.d.ts的文件
// 如果没有这个文件 需要自己 declare 适配类型
import axios from 'axios'
import jquery from 'jquery'
// 使用declare module为没有提供类型定义的模块添加类型声明
// ts如何引入并声明 第三方的插件 用declare module
// declare module 'axios' {
//   export class axios{
//     get(): void;
//     post(): void;
//   }
// }

  import endOne from './endOne.vue'
  //  es6的set和map了可以标记类型
    // Set<typename>
    // Map<typename1,typename2>
  let myarr:Set<number>=new Set([12,3,34]);

  console.log(myarr)
  //  vue3的事件：  Event 事件对象类型
    let say=(e:Event)=>{
        console.log(e)
    }
   // NodeList 节点列表类型
  //  Storage
    // Location
  let lis:NodeList=document.querySelectorAll("ul li")
  console.log(lis)

    let getData=(a,b)=>{
        console.log(a,b)
    }


</script>
